dfc3b3f070fe3b11f26815d78d81f4ee71531824,jobqueue/src/test/java/com/path/android/jobqueue/test/jobqueue/JobQueueTestBase.java,JobQueueTestBase,assertTags,#String#JobQueue#JobHolder#,648

Before Change


                assertThat(msg + " any combinations: returned job should be the correct one", result.iterator().next().getId(), is(id));
                assertThat(msg + " returned holder should have all tags:", result.iterator().next().getTags(), allTagsMatcher);
            }
            result = jobQueue.findJobsByTags(TagConstraint.ANY,true,  exclude, tags);
            assertThat(msg + " when excluded, holder should not show up in results", result.size(), is(
                    0));

        }

        for(String[] tags : combinations(holder.getTags())) {
            result = jobQueue.findJobsByTags(ALL, true, Collections.<String>emptyList(), tags);
            if (tags.length == 0) {
                assertThat(msg + " empty tag list, should return 0 jobs", result.size(), is(0));
            } else {

After Change



    }

    private void assertTags(String msg, JobQueue jobQueue, JobHolder holder) {
        Set<JobHolder> result;
        String wrongTag;
        final String id = holder.getId();
        boolean found;
        Matcher allTagsMatcher = CoreMatchers.hasItems(holder.getTags().toArray(new String[holder.getTags().size()]));
        do {
            wrongTag = UUID.randomUUID().toString();
            found = false;
            if(holder.getTags() != null) {
                for(String tag : holder.getTags()) {
                    if(tag.equals(wrongTag)) {
                        found = true;
                        break;
                    }
                }
            }
        } while (found);
        result = jobQueue.findJobs(forTags(ANY, Collections.<String>emptyList(), wrongTag));
        found = false;
        for(JobHolder received : result) {
            if(received.getId().equals(holder.getId())) {
                found = true;
            }
        }
        assertThat(msg + " when wrong tag is given, our job should not return", found, is(false));

        if(holder.getTags() == null) {
            return;// done
        }
        Collection<String> exclude = Arrays.asList(holder.getId());
        for(String[] tags : combinations(holder.getTags())) {
            result = jobQueue.findJobs(forTags(TagConstraint.ANY, Collections.<String>emptyList(), tags));
            if (tags.length == 0) {
                assertThat(msg + " empty tag list, should return 0 jobs", result.size(), is(0));
            } else {
                assertThat(msg + " any combinations: when correct tag is given, it should return one", result.size(), is(1));
                assertThat(msg + " any combinations: returned job should be the correct one", result.iterator().next().getId(), is(id));
                assertThat(msg + " returned holder should have all tags:", result.iterator().next().getTags(), allTagsMatcher);
            }
            result = jobQueue.findJobs(forTags(TagConstraint.ANY, exclude, tags));
            assertThat(msg + " when excluded, holder should not show up in results", result.size(), is(
                    0));

        }

        for(String[] tags : combinations(holder.getTags())) {
            result = jobQueue.findJobs(forTags(ALL, Collections.<String>emptyList(), tags));
            if (tags.length == 0) {
                assertThat(msg + " empty tag list, should return 0 jobs", result.size(), is(0));
            } else {